LabVIEW代码中常见的错误 您所在的位置:网站首页 labview 错误簇 LabVIEW代码中常见的错误

LabVIEW代码中常见的错误

2024-06-15 19:47| 来源: 网络整理| 查看: 265

1.数值溢出

输出的数据超过了所使用的数据类型的范围。

对于单个数据(不用于数组),建议使用长数据类型,以避免可能发生的错误。

2.for循环的隧道

for循环使用简单的一般隧道时,for循环会自动索引数组,如数组为空时,则不会进入for循环内。 建议在使用for循环前判断下,使用索引的数组是否为空。对于其他进入for循环的数据建议使用移位寄存器(移位寄存器的输入输出节点公用一个内存空间)。

3.循环次数

当for循环接入多个数组时(都开启索引)同时又指定了循环迭代次数N,for循环的次数取决于几个数组中长度和N最小的一个。while循环也可以索引数组,但是建议使用for循环。

4.移位寄存器的初始化

没有初始化的移位寄存器,在vi被关闭前会一直保存上一次运行结束时的数据。FGV就是利用了此特性。但是很多时候移位寄存器只是用作循环内部的局部变量。这时,一定要对其初始化。

5.簇中元素的顺序

在使用簇的捆绑和接触捆绑函数时,一定要注意其输入和输出簇中元素的顺序,避免顺序接错。

建议:

1.凡是用到簇的地方,就为其创建一个类型定义。一是可以保证簇中元素的顺序和类型完全一致。二是一旦需要变动簇中的元素,只需要在类型定义中更新以下,它所有的实例都会被更新,不需要对逐个vi进行修改。 2.凡是使用簇的捆绑和解除捆绑的地方,使用按名称捆绑和按名称接触捆绑,这样可以避免因顺序不同导致程序出错。 3.前面板可以设置按照水平或者垂直自动排列簇元素。这样簇中的控件顺序会和数据的顺序保持一致。

6.时序错误

由于LabVIEW是自动多线程的编程语言,所以在使用时一定要注意数据流的流动顺序,需要并行运行的时候尽量使用错误簇来进行前后程序的连接。

7.竞争状态

当多个线程同时访问一个数据时会引起数据混乱,主要是当使用全局变量时。这时可以考虑FGV。除了FGV还可以使用队列。

8.循环内部需要放延时函数

在一个不断轮询的函数内需要加入一个几十或者几百毫秒的延时。否则程序会会占用大部分的CPU,会影响程序其他部分执行缓慢。

以上参考《我和LabVIEW》一书



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有